1. Field
The present invention relates to digital filters for signal and image processing.
2. Relevant Background
IIR (Infinite Impulse Response) filters are used for many signal and image processing applications. For example, IIR filters are frequently used to process signals in computer networks, communication systems (both wired and wireless), as well as imaging systems. Specifically, IIR filters can be used to improve signal quality in noise (such as electro magnetic interference) cancellation systems.
FIG. 1 is a block diagram of an IIR filter 100 having a multiplier 110, an adder 120, a quantizer 130, a delay unit 140, and a multiplier 150. IIR filter 100 receives an input signal I and generates an output signal O. The behavior of IIR filter 100 is controlled by an input factor IF and a feedback factor FF. Delay unit 140 and multiplier 150 form a feedback path for IIR filter 100.
Specifically, multiplier 110 multiplies input signal I with input factor IF. The product from multiplier 110 is provided to one input port of adder 120. Adder 120 also receives the product from multiplier 150. The sum from adder 120 is quantized by quantizer 130 to form output signal O. Output signal O is sent through the feedback path formed by delay unit 140 and multiplier 150. Specifically, output signal O is delayed by one clock cycle in delay unit 140. The delayed output from delay unit 140 is multiplied by feedback factor FF by multiplier 150. The product from multiplier 150 is provided to adder 120.
In many applications, signal rates are increasing very rapidly. For example, network bandwidth has increased by several orders of magnitude in the past few years. The increasing signal rates require faster and faster IIR filters to maintain signal quality. However, hardware implementations of IIR filters are not able to perform at the required speed of the signals. Hence there is a need for a method and system for performing the functions of an IIR filter more rapidly.